package com.xinghanlaser.applet.base.auth.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.xinghanlaser.applet.base.auth.entity.UserDO;
import com.xinghanlaser.applet.base.auth.query.UserQuery;
import com.xinghanlaser.applet.base.auth.vo.UserDataVO;
import com.xinghanlaser.applet.base.auth.vo.UserDetailVO;
import com.xinghanlaser.applet.base.auth.vo.UserPostVO;
import com.xinghanlaser.applet.base.auth.vo.UserPutVO;
import com.xinghanlaser.applet.base.common.entity.ResponseEntity;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author dym
 * @since 2019-11-19
 */
public interface IUserService extends IService<UserDO> {
    UserDetailVO queryUserDetail(UserDO user);

    ResponseEntity<ResponseEntity.PageResult<UserDataVO>> pageByCondition(UserQuery query);

    ResponseEntity<Void> addUser(UserPostVO postVO);

    ResponseEntity<Void> modUser(UserPutVO putVO);

    void validatedUserId(Long id);

    ResponseEntity<Void> delUser(Long id);
}
